home *** CD-ROM | disk | FTP | other *** search
/ PC Zone 96 / PC Zone #096.7z / Dppcz1200.mdf / Demos / Gunlok / data1.cab / Program_Executable_Files / scripts / plasma.gsh < prev    next >
Text File  |  2000-09-09  |  13KB  |  649 lines

  1. // defines the weapon Wpn_Pistol
  2. ////////////////////////////////////////////////////////////////////////////////////
  3.  
  4. // start wrapper - prevent multiple inclusions or recursive inclusions
  5.  
  6. //(this currently causes 'unrecognized preprocessor directive' warnings, until implemented)
  7. #ifndef INCLUDED_PLASMA_GSH
  8. #define INCLUDED_PLASMA_GSH
  9.  
  10. ////////////////////////////////////////////////////////////////////////////////////
  11.  
  12. light Lit_Flare
  13. {
  14.     red        3.5
  15.     green        3.5
  16.     blue        4.5
  17.     specular red    0.5
  18.     specular green    0.5
  19.     specular blue    0.5
  20.     range        20
  21. }
  22.  
  23. light Lit_BluePlasma
  24. {
  25.     red             5
  26.     green           2
  27.     blue            1
  28.     specular red    1
  29.     specular green    0.5
  30.     specular blue    0
  31.     range           5
  32. }
  33.  
  34. light Lit_PurplePlasma
  35. {
  36.     red                2.00
  37.     green            0.24
  38.     blue            3.86
  39.     specular red    0.59
  40.     specular green    0.07
  41.     specular blue    0.96
  42.     range            10
  43. }
  44.  
  45. ////////////////////////////////////////////////////////////////////////////////////
  46.  
  47. pgenerator Pgn_Flare
  48. {
  49.     type shot
  50.     life infinite // well actually until the shot no longer exists
  51.     rate 60
  52.     // stream direction
  53.     x 0 y 0 z 0
  54.     // particle colour
  55.     red 1 green 1 blue 1 alpha 0.5
  56.     // scale
  57.     start scale 1.0 end scale 0.5
  58. }
  59.  
  60. pgenerator Pgn_BluePlasma
  61. {
  62.     type explosion
  63.     life infinite // well actually until the shot no longer exists
  64.     particle TTL 0.05    //seconds before a particle fades out or whatever
  65.     rate 400
  66.     // stream direction
  67.     x 0 y 0 z 0
  68.     // particle colour
  69.     red 0.6 green 0.6 blue 1 alpha 1.0
  70.     // scale
  71.     start scale 0.2 end scale 0.1
  72.     spin 10000
  73. }
  74.  
  75. pgenerator Pgn_BluePlasmabig
  76. {
  77.     type explosion
  78.     life infinite // well actually until the shot no longer exists
  79.     particle TTL 0.1
  80.     rate 400
  81.     // stream direction
  82.     x 0 y 0 z 0
  83.     // particle colour
  84.     red 0.5 green 0.5 blue 1.5 alpha 1.0
  85.     // scale
  86.     start scale 0.25 end scale 0.1
  87.     spin 10000
  88. }
  89.  
  90. pgenerator Pgn_PurplePlasma
  91. {
  92.     type explosion
  93.     life infinite // well actually until the shot no longer exists
  94.     particle TTL 0.2
  95.     rate 500
  96.     // stream direction
  97.     x 0 y 0 z 0
  98.     // particle colour
  99.     red 0.4 green 0.20 blue 0.96 alpha 0.5
  100.     // scale
  101.     start scale 0.3 end scale 0.1
  102.     spin 10000
  103. }
  104.  
  105. pgenerator Pgn_PurplePlasmabig
  106. {
  107.     type explosion
  108.     life infinite // well actually until the shot no longer exists
  109.     particle TTL 0.3
  110.     rate 500
  111.     // stream direction
  112.     x 0 y 0 z 0
  113.     // particle colour
  114.     red 0.59 green 0.20 blue 0.96 alpha 0.5
  115.     // scale
  116.     start scale 0.35 end scale 0.1
  117.     spin 10000
  118. }
  119.  
  120.  
  121. ////////////////////////////////////////////////////////////////////////////////////
  122.  
  123. projectile Prj_Flare
  124. {
  125.     gravity        yes
  126.     damage        0
  127.     blast        0
  128.     max range    10000
  129. }
  130.  
  131. projectile Prj_Needle
  132. {
  133.     gravity     no    // is this missile affected by gravity
  134.     damage      2    // in strength points
  135.     blast       0    // proximity damage
  136.     blast range    0    // range of proximity damage
  137.     max range    324    // distance squared, in metres
  138. }
  139.  
  140. projectile Prj_Plasma_Bolt
  141. {
  142.     gravity        yes    // is this missile affected by gravity
  143.     damage        5    // in strength points
  144.     blast        0    // proximity damage
  145.     blast range    0    // range of proximity damage
  146.     max range    600    // distance squared, in metres
  147. }
  148.  
  149. projectile Prj_Plasmaxi_Bolt
  150. {
  151.     gravity        yes    // is this missile affected by gravity
  152.     damage        7    // in strength points
  153.     blast        0    // proximity damage
  154.     blast range    0    // range of proximity damage
  155.     max range    900    // distance squared, in metres
  156. }
  157.  
  158. projectile Prj_Plasma_Shell
  159. {
  160.     gravity      yes    // is this missile affected by gravity
  161.     damage       10    // in strength points
  162.     blast        0    // proximity damage
  163.     blast range    0    // range of proximity damage
  164.     max range    1600    // distance squared, in metres
  165. }
  166.  
  167. projectile Prj_Autolock_Plasma_Bolt
  168. {
  169.     gravity      yes    // is this missile affected by gravity
  170.     damage       11    // in strength points
  171.     blast        0    // proximity damage
  172.     blast range    0    // range of proximity damage
  173.     max range    1600    // distance squared, in metres
  174. }
  175.  
  176. ////////////////////////////////////////////////////////////////////////////////////
  177.  
  178. character Chr_Flare : Chr_Default
  179. {
  180.     turning speed   1.0
  181.     walking speed   1.0    // must be non-zero to make it a defogging DYNAMIC actor
  182.     strength        5
  183.     aim             2
  184.     sight angle        70
  185.     sight range     16    // IMPORTANT - defogging radius
  186.     hearing range    20
  187.     aggression        0.9
  188. }
  189.  
  190. ////////////////////////////////////////////////////////////////////////////////////
  191.  
  192. role Rol_Plasma_Bolt : Rol_DefaultProjectile
  193. {
  194.     shape        Pgn_BluePlasma
  195.  
  196.     projectile    Prj_Plasma_Bolt
  197.  
  198.     identifier    "plasma_bolt"
  199.  
  200.     light        Lit_BluePlasma
  201.  
  202.     limit        4                // muzzle flash
  203. }
  204.  
  205. role Rol_Plasmaxi_Bolt : Rol_DefaultProjectile
  206. {
  207.     shape        Pgn_BluePlasmabig
  208.  
  209.     projectile    Prj_Plasmaxi_Bolt
  210.  
  211.     identifier    "plasmaxi_bolt"
  212.  
  213.     light        Lit_BluePlasma
  214.  
  215.     limit        4                // muzzle flash
  216. }
  217.  
  218. role Rol_Plasma_Shell : Rol_DefaultProjectile
  219. {
  220.     shape        Pgn_PurplePlasma
  221.  
  222.     projectile    Prj_Plasma_Shell
  223.  
  224.     identifier    "plasma_shell"
  225.  
  226.     light        Lit_PurplePlasma
  227.  
  228.     limit        4                // muzzle flash
  229. }
  230.  
  231. role Rol_Autolock_Plasma_Bolt : Rol_DefaultProjectile
  232. {
  233.     shape        Pgn_PurplePlasmabig
  234.  
  235.     projectile Prj_Autolock_Plasma_Bolt
  236.  
  237.     identifier    "autolock_plasma_bolt"
  238.  
  239.     light        Lit_PurplePlasma
  240.  
  241.     limit        4                // muzzle flash
  242. }
  243.  
  244. role Rol_Flare : Rol_DefaultProjectile
  245. {
  246.     shape        Pgn_Flare
  247.  
  248.     projectile    Prj_Flare
  249.  
  250.     character    Chr_Flare
  251.  
  252.     light        Lit_Flare
  253.  
  254.     identifier    "flare"
  255.  
  256.     limit        128                // defogger
  257. }
  258.  
  259. role Rol_Needle : Rol_DefaultProjectile
  260. {
  261.     projectile    Prj_Needle
  262.  
  263.     identifier    "needle"
  264. }
  265.  
  266. ////////////////////////////////////////////////////////////////////////////////////
  267.  
  268. // PLASMA_PISTOL
  269. ammo
  270. {
  271.     weapon type        plasma pistol
  272.     ammo type        needles
  273.  
  274.     round time        1                // time between shots, in seconds
  275.     reload time        3                // time to change magazine, in seconds
  276.     life timer        0                // for particle effects (e.g. flames), in secs.
  277.     magazine size        2000
  278.     sound            pistol sound
  279.  
  280.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  281.     name            "sub ammo pistol rf"
  282.  
  283.     projectile        Rol_Needle
  284.     firing speed    25                 // m/s
  285. }
  286. ammo
  287. {
  288.     weapon type        plasma pistol
  289.     ammo type        plasma bolts
  290.  
  291.     round time        1
  292.     reload time        2
  293.     life timer        0
  294.     magazine size    20
  295.     sound            pistol sound
  296.  
  297.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  298.     name            "sub ammo pistol ra"
  299.  
  300.     projectile        Rol_Plasma_Bolt
  301.     firing speed    25                 // m/s
  302. }
  303. ammo
  304. {
  305.     weapon type        plasma pistol
  306.     ammo type        plasmaxi bolts
  307.  
  308.     round time        1
  309.     reload time        2
  310.     life timer        0
  311.     magazine size    20
  312.     sound            pistol sound
  313.  
  314.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  315.     name            "sub ammo magnum rb"
  316.  
  317.     projectile        Rol_Plasmaxi_Bolt
  318.     firing speed    25                 // m/s
  319. }
  320. ammo
  321. {
  322.     weapon type        plasma pistol
  323.     ammo type        plasma shells
  324.  
  325.     round time        1
  326.     reload time        2
  327.     life timer        0
  328.     magazine size    10
  329.     sound            pistol sound
  330.  
  331.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  332.     name            "sub ammo pistol rc"
  333.  
  334.     projectile        Rol_Plasma_Shell
  335.     firing speed    25                 // m/s
  336. }
  337. ammo
  338. {
  339.     weapon type        plasma pistol
  340.     ammo type        autolock bolts
  341.  
  342.     round time        1
  343.     reload time        2
  344.     life timer        0
  345.     magazine size    10
  346.     sound            pistol sound
  347.  
  348.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  349.     name            "sub ammo pistol rd"
  350.  
  351.     projectile        Rol_Autolock_Plasma_Bolt
  352.     firing speed    25                 // m/s
  353. }
  354. ammo
  355. {
  356.     weapon type        plasma pistol
  357.     ammo type        flares
  358.  
  359.     round time        2
  360.     reload time        2
  361.     life timer        0
  362.     magazine size    10
  363.     sound            magnum sound
  364.  
  365.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  366.     name            "sub ammo pistol re"
  367.  
  368.     projectile        Rol_Flare
  369.     firing speed    15                // metres per second
  370. }
  371.  
  372. // PLASMAGNUM
  373. ammo
  374. {
  375.     weapon type        plasmagnum
  376.     ammo type        plasma bolts
  377.  
  378.     round time        1
  379.     reload time        2
  380.     life timer        0
  381.     magazine size    20
  382.     sound            magnum sound
  383.  
  384.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  385.     name            "sub ammo magnum ra"
  386.  
  387.     projectile        Rol_Plasma_Bolt
  388.     firing speed    25                 // m/s
  389. }
  390. ammo
  391. {
  392.     weapon type        plasmagnum 
  393.     ammo type        plasmaxi bolts
  394.  
  395.     round time        1
  396.     reload time        2
  397.     life timer        0
  398.     magazine size    20
  399.     sound            magnum sound
  400.  
  401.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  402.     name            "sub ammo magnum rb"
  403.  
  404.     projectile        Rol_Plasmaxi_Bolt
  405.     firing speed    25                 // m/s
  406. }
  407. ammo
  408. {
  409.     weapon type        plasmagnum 
  410.     ammo type        plasma shells
  411.  
  412.     round time        1
  413.     reload time        2
  414.     life timer        0
  415.     magazine size    10
  416.     sound            magnum sound
  417.  
  418.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  419.     name            "sub ammo magnum rc"
  420.  
  421.     projectile        Rol_Plasma_Shell
  422.     firing speed    25                 // m/s
  423. }
  424. ammo
  425. {
  426.     weapon type        plasmagnum 
  427.     ammo type        autolock bolts
  428.  
  429.     round time        1
  430.     reload time        2
  431.     life timer        0
  432.     magazine size        10
  433.     sound            magnum sound
  434.  
  435.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  436.     name            "sub ammo magnum rd"
  437.  
  438.     projectile        Rol_Autolock_Plasma_Bolt
  439.     firing speed    25                 // m/s
  440. }
  441.  
  442. // PLASMATRIX
  443. ammo
  444. {
  445.     weapon type        plasmatrix
  446.     ammo type        plasma bolts
  447.  
  448.     round time        0.5
  449.     reload time        2
  450.     life timer        0
  451.     magazine size    20
  452.     sound            machine pistol sound
  453.     salvo size        4
  454.  
  455.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  456.     name            "sub ammo mach ra"
  457.  
  458.     projectile        Rol_Plasma_Bolt
  459.     firing speed    25                 // m/s
  460. }
  461. ammo
  462. {
  463.     weapon type        plasmatrix 
  464.     ammo type        plasmaxi bolts
  465.  
  466.     round time        0.5
  467.     reload time        2
  468.     life timer        0
  469.     magazine size    20
  470.     sound            machine pistol sound
  471.     salvo size        5
  472.  
  473.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  474.     name            "sub ammo mach rb"
  475.  
  476.     projectile        Rol_Plasmaxi_Bolt
  477.     firing speed    25                 // m/s
  478. }
  479. ammo
  480. {
  481.     weapon type        plasmatrix 
  482.     ammo type        plasma shells
  483.  
  484.     round time        0.5
  485.     reload time        2
  486.     life timer        0
  487.     magazine size    10
  488.     sound            machine pistol sound
  489.     salvo size        4
  490.  
  491.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  492.     name            "sub ammo mach rc"
  493.  
  494.     projectile        Rol_Plasma_Shell
  495.     firing speed    25                 // m/s
  496. }
  497. ammo
  498. {
  499.     weapon type        plasmatrix 
  500.     ammo type        autolock bolts
  501.  
  502.     round time        0.5
  503.     reload time        2
  504.     life timer        0
  505.     magazine size    10
  506.     sound            machine pistol sound
  507.     salvo size        4
  508.  
  509.     file            "User Interface/CommWheel01.RIF"    // command wheel icon
  510.     name            "sub ammo mach rd"
  511.  
  512.     projectile        Rol_Autolock_Plasma_Bolt
  513.     firing speed    25                 // m/s
  514. }
  515.  
  516. ////////////////////////////////////////////////////////////////////////////////////
  517.  
  518. shape Shp_Plasma_Pistol_Pickup
  519. {
  520.     file "objects\pistol pickup a.rif"
  521.     name "pistol pickup a"
  522. }
  523.  
  524. hierarchy Hcy_Plasma_Pistol_Inventory_Pickup
  525. {
  526.     file "objects\pistol.rif"
  527.     name "pistol"
  528.     hotspot none
  529. }
  530.  
  531. shape Shp_Plasmatrix_Pickup
  532. {
  533.     file "objects\machine pistol pickup a.rif"
  534.     name "machine pistol pickup a"
  535. }
  536.  
  537. hierarchy Hcy_Plasmatrix_Inventory_Pickup
  538. {
  539.     file "objects\machine pistol.rif"
  540.     name "machine pistol"
  541.     hotspot none
  542. }
  543.  
  544. shape Shp_Plasmagnum_Pickup
  545. {
  546.     file "objects\magnum pickup a.rif"
  547.     name "magnum pickup a"
  548. }
  549.  
  550. hierarchy Hcy_Plasmagnum_Inventory_Pickup
  551. {
  552.     file "objects\magnum.rif"
  553.     name "magnum"
  554.     hotspot none
  555. }
  556.  
  557. character Chr_Plasma_Pistol_Pickup : Chr_Default
  558. {
  559.     turning speed   0    // this is in revolutions per second
  560.     walking speed   0    // this is in animation cycles per second
  561.     weapon            plasma pistol
  562.     strength        10    // initial strength points
  563.     aim                0
  564.     aggression        0.41    // 4 = weapon pickup
  565. }
  566.  
  567. character Chr_Plasmatrix_Pickup : Chr_Default
  568. {
  569.     turning speed   0    // this is in revolutions per second
  570.     walking speed   0    // this is in animation cycles per second
  571.     weapon            plasmatrix
  572.     strength        10    // initial strength points
  573.     aim                0
  574.     aggression        0.41    // 4 = weapon pickup
  575. }
  576.  
  577. character Chr_Plasmagnum_Pickup : Chr_Default
  578. {
  579.     turning speed   0    // this is in revolutions per second
  580.     walking speed   0    // this is in animation cycles per second
  581.     weapon            plasmagnum
  582.     strength        10    // initial strength points
  583.     aim                0
  584.     aggression        0.41    // 4 = weapon pickup
  585. }
  586.  
  587. role Rol_Plasma_Pistol_Pickup : Rol_DefaultPickup
  588. {
  589.     shape            Shp_Plasma_Pistol_Pickup
  590.  
  591.     inventory shape    Hcy_Plasma_Pistol_Inventory_Pickup
  592.  
  593.     character        Chr_Plasma_Pistol_Pickup
  594.  
  595.     identifier        "plasma_pistol"
  596.  
  597.     pickup name        plasma pistol pickup
  598.  
  599.     destructibility    Des_Explode
  600.  
  601.     armour            25
  602.  
  603.     description        GL_DESCRIPTION_PLASMA_PISTOL
  604. }
  605.  
  606. role Rol_Plasmatrix_Pickup : Rol_DefaultPickup
  607. {
  608.     shape            Shp_Plasmatrix_Pickup
  609.  
  610.     inventory shape    Hcy_Plasmatrix_Inventory_Pickup
  611.  
  612.     character        Chr_Plasmatrix_Pickup
  613.  
  614.     identifier        "plasmatrix"
  615.  
  616.     destructibility    Des_Explode
  617.  
  618.     armour            25
  619.  
  620.     limit            2
  621.  
  622.     description        GL_DESCRIPTION_PLASMATRIX
  623.  
  624.     pickup name        plasmatrix pickup
  625. }
  626.  
  627. role Rol_Plasmagnum_Pickup : Rol_DefaultPickup
  628. {
  629.     shape            Shp_Plasmagnum_Pickup
  630.  
  631.     inventory shape    Hcy_Plasmagnum_Inventory_Pickup
  632.  
  633.     character        Chr_Plasmagnum_Pickup
  634.  
  635.     identifier        "plasmagnum"
  636.  
  637.     destructibility    Des_Explode
  638.  
  639.     armour            25
  640.  
  641.     description        GL_DESCRIPTION_PLASMAGNUM
  642.  
  643.     pickup name        plasmagnum pickup
  644. }
  645.  
  646. ////////////////////////////////////////////////////////////////////////////////////
  647.  
  648. // end wrapper - for preventing multiple or recursive inclusions
  649. #endif // !INCLUDED_PLASMA_GSH